home *** CD-ROM | disk | FTP | other *** search
- GIT v1.6.5 Release Notes
- ========================
-
- In git 1.7.0, which was planned to be the release after 1.6.5, "git
- push" into a branch that is currently checked out will be refused by
- default.
-
- You can choose what should happen upon such a push by setting the
- configuration variable receive.denyCurrentBranch in the receiving
- repository.
-
- Also, "git push $there :$killed" to delete the branch $killed in a remote
- repository $there, when $killed branch is the current branch pointed at by
- its HEAD, will be refused by default.
-
- You can choose what should happen upon such a push by setting the
- configuration variable receive.denyDeleteCurrent in the receiving
- repository.
-
- To ease the transition plan, the receiving repository of such a
- push running this release will issue a big warning when the
- configuration variable is missing. Please refer to:
-
- http://git.or.cz/gitwiki/GitFaq#non-bare
- http://thread.gmane.org/gmane.comp.version-control.git/107758/focus=108007
-
- for more details on the reason why this change is needed and the
- transition plan.
-
- Updates since v1.6.4
- --------------------
-
- (subsystems)
-
- * various updates to gitk, git-svn and gitweb.
-
- (portability)
-
- * more improvements on mingw port.
-
- * mingw will also give FRSX as the default value for the LESS
- environment variable when the user does not have one.
-
- * initial support to compile git on Windows with MSVC.
-
- (performance)
-
- * On major platforms, the system can be compiled to use with Linus's
- block-sha1 implementation of the SHA-1 hash algorithm, which
- outperforms the default fallback implementation we borrowed from
- Mozilla.
-
- * Unnecessary inefficiency in deepening of a shallow repository has
- been removed.
-
- * "git clone" does not grab objects that it does not need (i.e.
- referenced only from refs outside refs/heads and refs/tags
- hierarchy) anymore.
-
- * The "git" main binary used to link with libcurl, which then dragged
- in a large number of external libraries. When using basic plumbing
- commands in scripts, this unnecessarily slowed things down. We now
- implement http/https/ftp transfer as a separate executable as we
- used to.
-
- * "git clone" run locally hardlinks or copies the files in .git/ to
- newly created repository. It used to give new mtime to copied files,
- but this delayed garbage collection to trigger unnecessarily in the
- cloned repository. We now preserve mtime for these files to avoid
- this issue.
-
- (usability, bells and whistles)
-
- * Human writable date format to various options, e.g. --since=yesterday,
- master@{2000.09.17}, are taught to infer some omitted input properly.
-
- * A few programs gave verbose "advice" messages to help uninitiated
- people when issuing error messages. An infrastructure to allow
- users to squelch them has been introduced, and a few such messages
- can be silenced now.
-
- * refs/replace/ hierarchy is designed to be usable as a replacement
- of the "grafts" mechanism, with the added advantage that it can be
- transferred across repositories.
-
- * "git am" learned to optionally ignore whitespace differences.
-
- * "git am" handles input e-mail files that has CRLF line endings sensibly.
-
- * "git am" learned "--scissors" option to allow you to discard early part
- of an incoming e-mail.
-
- * "git archive -o output.zip" works without being told what format to
- use with an explicit "--format=zip".option.
-
- * "git checkout", "git reset" and "git stash" learned to pick and
- choose to use selected changes you made, similar to "git add -p".
-
- * "git clone" learned a "-b" option to pick a HEAD to check out
- different from the remote's default branch.
-
- * "git clone" learned --recursive option.
-
- * "git clone" from a local repository on a different filesystem used to
- copy individual object files without preserving the old timestamp, giving
- them extra lifetime in the new repository until they gc'ed.
-
- * "git commit --dry-run $args" is a new recommended way to ask "what would
- happen if I try to commit with these arguments."
-
- * "git commit --dry-run" and "git status" shows conflicted paths in a
- separate section to make them easier to spot during a merge.
-
- * "git cvsimport" now supports password-protected pserver access even
- when the password is not taken from ~/.cvspass file.
-
- * "git fast-export" learned --no-data option that can be useful when
- reordering commits and trees without touching the contents of
- blobs.
-
- * "git fast-import" has a pair of new front-end in contrib/ area.
-
- * "git init" learned to mkdir/chdir into a directory when given an
- extra argument (i.e. "git init this").
-
- * "git instaweb" optionally can use mongoose as the web server.
-
- * "git log --decorate" can optionally be told with --decorate=full to
- give the reference name in full.
-
- * "git merge" issued an unnecessarily scary message when it detected
- that the merge may have to touch the path that the user has local
- uncommitted changes to. The message has been reworded to make it
- clear that the command aborted, without doing any harm.
-
- * "git push" can be told to be --quiet.
-
- * "git push" pays attention to url.$base.pushInsteadOf and uses a URL
- that is derived from the URL used for fetching.
-
- * informational output from "git reset" that lists the locally modified
- paths is made consistent with that of "git checkout $another_branch".
-
- * "git submodule" learned to give submodule name to scripts run with
- "foreach" subcommand.
-
- * various subcommands to "git submodule" learned --recursive option.
-
- * "git submodule summary" learned --files option to compare the work
- tree vs the commit bound at submodule path, instead of comparing
- the index.
-
- * "git upload-pack", which is the server side support for "git clone" and
- "git fetch", can call a new post-upload-pack hook for statistics purposes.
-
- (developers)
-
- * With GIT_TEST_OPTS="--root=/p/a/t/h", tests can be run outside the
- source directory; using tmpfs may give faster turnaround.
-
- * With NO_PERL_MAKEMAKER set, DESTDIR= is now honoured, so you can
- build for one location, and install into another location to tar it
- up.
-
- Fixes since v1.6.4
- ------------------
-
- All of the fixes in v1.6.4.X maintenance series are included in this
- release, unless otherwise noted.
-